/**************************************************************************
 *  创建者：        华磊
 *  开始时间：   2019.11.22
 *  copyright:  (C) 深圳市华友高科有限公司
 *  修改说明：  (每次有修改就添加一条，带有 修改人，修改时间，修改描述)
 *
 ***************************************************************************
 *
 *
 ***************************************************************************/
#ifndef WELDSTARTINSTRUCTIONVIEW_H
#define WELDSTARTINSTRUCTIONVIEW_H
#include <QMainWindow>
#include <QWidget>
#include "../ProgramSet/weldstartinstruction.h"


namespace Ui {
class WeldStartInstructionView;
}

class WeldStartInstructionView : public QWidget
{
    Q_OBJECT

public:
    explicit WeldStartInstructionView(int styleId,QWidget *parent = 0);
    ~WeldStartInstructionView();

public:
    /**
     * @brief getInput             获取界面输入
     */
    void getInput(WeldStartInstruction &instructionParaOut);

    /**
     * @brief updateView            根据instructionPara更新数据显示在界面
     */
    void updateView();

    /**
     * @brief changeLanguage      界面语言切换
     * @param language
     */
    void changeLanguage(int language);

    void initialDisplayStyle(int styleId);
private:
    void finishEditInstruction(WeldStartInstruction instructionParaIn,QString &instructionStrOut);

private slots:
    void on_button_editProperty_clicked();

    void on_button_editCondition_clicked();

    void on_clearNote_Btn_clicked();

    void on_save_Btn_clicked();

    void on_radioButton_conditionIndex_clicked(bool checked);

    void on_radioButton_conditionValue_clicked(bool checked);
signals:
    /**
     * @brief cleanNoteStrSignal             删除注释信号
     */
    void cleanNoteStrSignal();

    /**
     * @brief finishEditInstruction         指令属性编辑完成
     */
    void finishEditInstructionSignal();

    /**
     * @brief saveInstructionSignal         保存指令
     * @param instructionStr                指令字符串
     */
    void saveInstructionSignal(const QString& instructionStr);

    /**
     * @brief showPropertyView  显示焊接属性页面
     */
    void showPropertyView();

    /**
     * @brief showConditionView 显示焊接条件页面
     */
    void showConditionView();

    /**
     * @brief showErrorMsgBox 显示信息弹窗内容
     * @param msg
     */

    void showErrorMsgBox(QString msg);

public:
        QString instructionStr;
        WeldStartInstruction instructionPara;

private:
    Ui::WeldStartInstructionView *ui;
};

#endif // WELDSTARTINSTRUCTIONVIEW_H
